home *** CD-ROM | disk | FTP | other *** search
- package javax.swing;
-
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Rectangle;
- import java.awt.event.MouseEvent;
- import java.io.IOException;
- import java.io.ObjectOutputStream;
- import java.io.Serializable;
- import java.util.Vector;
- import javax.accessibility.Accessible;
- import javax.accessibility.AccessibleContext;
- import javax.accessibility.AccessibleState;
- import javax.swing.event.ChangeEvent;
- import javax.swing.event.ChangeListener;
- import javax.swing.plaf.TabbedPaneUI;
-
- public class JTabbedPane extends JComponent implements Serializable, Accessible, SwingConstants {
- private static final String uiClassID = "TabbedPaneUI";
- protected int tabPlacement;
- protected SingleSelectionModel model;
- private boolean haveRegistered;
- protected ChangeListener changeListener;
- Vector pages;
- protected transient ChangeEvent changeEvent;
- // $FF: synthetic field
- static Class class$javax$swing$event$ChangeListener;
-
- public JTabbedPane() {
- this(1);
- }
-
- public JTabbedPane(int var1) {
- this.tabPlacement = 1;
- this.changeListener = null;
- this.changeEvent = null;
- this.setTabPlacement(var1);
- this.pages = new Vector(1);
- this.setModel(new DefaultSingleSelectionModel());
- this.updateUI();
- }
-
- public Component add(Component var1) {
- this.addTab(var1.getName(), var1);
- return var1;
- }
-
- public Component add(Component var1, int var2) {
- this.insertTab(var1.getName(), (Icon)null, var1, (String)null, var2);
- return var1;
- }
-
- public void add(Component var1, Object var2) {
- if (var2 instanceof String) {
- this.addTab((String)var2, var1);
- } else if (var2 instanceof Icon) {
- this.addTab((String)null, (Icon)var2, var1);
- } else {
- this.add(var1);
- }
-
- }
-
- public void add(Component var1, Object var2, int var3) {
- Icon var4 = var2 instanceof Icon ? (Icon)var2 : null;
- String var5 = var2 instanceof String ? (String)var2 : null;
- this.insertTab(var5, var4, var1, (String)null, var3);
- }
-
- public Component add(String var1, Component var2) {
- this.addTab(var1, var2);
- return var2;
- }
-
- public void addChangeListener(ChangeListener var1) {
- super.listenerList.add(class$javax$swing$event$ChangeListener != null ? class$javax$swing$event$ChangeListener : (class$javax$swing$event$ChangeListener = class$("javax.swing.event.ChangeListener")), var1);
- }
-
- public void addTab(String var1, Component var2) {
- this.insertTab(var1, (Icon)null, var2, (String)null, this.pages.size());
- }
-
- public void addTab(String var1, Icon var2, Component var3) {
- this.insertTab(var1, var2, var3, (String)null, this.pages.size());
- }
-
- public void addTab(String var1, Icon var2, Component var3, String var4) {
- this.insertTab(var1, var2, var3, var4, this.pages.size());
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(((Throwable)var2).getMessage());
- }
- }
-
- protected ChangeListener createChangeListener() {
- return new ModelListener(this);
- }
-
- protected void fireStateChanged() {
- Object[] var1 = super.listenerList.getListenerList();
-
- for(int var2 = var1.length - 2; var2 >= 0; var2 -= 2) {
- if (var1[var2] == (class$javax$swing$event$ChangeListener != null ? class$javax$swing$event$ChangeListener : (class$javax$swing$event$ChangeListener = class$("javax.swing.event.ChangeListener")))) {
- if (this.changeEvent == null) {
- this.changeEvent = new ChangeEvent(this);
- }
-
- ((ChangeListener)var1[var2 + 1]).stateChanged(this.changeEvent);
- }
- }
-
- }
-
- public AccessibleContext getAccessibleContext() {
- if (super.accessibleContext == null) {
- super.accessibleContext = new AccessibleJTabbedPane(this);
- }
-
- return super.accessibleContext;
- }
-
- public Color getBackgroundAt(int var1) {
- return ((Page)this.pages.elementAt(var1)).getBackground();
- }
-
- public Rectangle getBoundsAt(int var1) {
- return super.ui != null ? ((TabbedPaneUI)super.ui).getTabBounds(this, var1) : null;
- }
-
- public Component getComponentAt(int var1) {
- return ((Page)this.pages.elementAt(var1)).component;
- }
-
- public Icon getDisabledIconAt(int var1) {
- return ((Page)this.pages.elementAt(var1)).disabledIcon;
- }
-
- public Color getForegroundAt(int var1) {
- return ((Page)this.pages.elementAt(var1)).getForeground();
- }
-
- public Icon getIconAt(int var1) {
- return ((Page)this.pages.elementAt(var1)).icon;
- }
-
- public SingleSelectionModel getModel() {
- return this.model;
- }
-
- public Component getSelectedComponent() {
- int var1 = this.getSelectedIndex();
- return var1 == -1 ? null : this.getComponentAt(var1);
- }
-
- public int getSelectedIndex() {
- return this.model.getSelectedIndex();
- }
-
- public int getTabCount() {
- return this.pages.size();
- }
-
- public int getTabPlacement() {
- return this.tabPlacement;
- }
-
- public int getTabRunCount() {
- return super.ui != null ? ((TabbedPaneUI)super.ui).getTabRunCount(this) : 0;
- }
-
- public String getTitleAt(int var1) {
- return ((Page)this.pages.elementAt(var1)).title;
- }
-
- public String getToolTipText(MouseEvent var1) {
- if (super.ui != null) {
- int var2 = ((TabbedPaneUI)super.ui).tabForCoordinate(this, var1.getX(), var1.getY());
- if (var2 != -1) {
- return ((Page)this.pages.elementAt(var2)).tip;
- }
- }
-
- return super.getToolTipText(var1);
- }
-
- public TabbedPaneUI getUI() {
- return (TabbedPaneUI)super.ui;
- }
-
- public String getUIClassID() {
- return "TabbedPaneUI";
- }
-
- public int indexOfComponent(Component var1) {
- for(int var2 = 0; var2 < this.getTabCount(); ++var2) {
- Component var3 = this.getComponentAt(var2);
- if (var3 != null) {
- if (var3.equals(var1)) {
- return var2;
- }
- } else if (var3 == var1) {
- return var2;
- }
- }
-
- return -1;
- }
-
- public int indexOfTab(String var1) {
- for(int var2 = 0; var2 < this.getTabCount(); ++var2) {
- if (this.getTitleAt(var2).equals(var1 == null ? "" : var1)) {
- return var2;
- }
- }
-
- return -1;
- }
-
- public int indexOfTab(Icon var1) {
- for(int var2 = 0; var2 < this.getTabCount(); ++var2) {
- if (this.getIconAt(var2).equals(var1)) {
- return var2;
- }
- }
-
- return -1;
- }
-
- public void insertTab(String var1, Icon var2, Component var3, String var4, int var5) {
- ImageIcon var6 = null;
- if (var2 != null && var2 instanceof ImageIcon) {
- var6 = new ImageIcon(GrayFilter.createDisabledImage(((ImageIcon)var2).getImage()));
- }
-
- int var7;
- if (var3 != null && (var7 = this.indexOfComponent(var3)) != -1) {
- this.removeTabAt(var7);
- }
-
- this.pages.insertElementAt(new Page(this, this, var1 != null ? var1 : "", var2, var6, var3, var4), var5);
- if (var3 != null) {
- var3.setVisible(false);
- ((Container)this).addImpl(var3, (Object)null, -1);
- }
-
- if (this.pages.size() == 1) {
- this.setSelectedIndex(0);
- }
-
- if (!this.haveRegistered && var4 != null) {
- ToolTipManager.sharedInstance().registerComponent(this);
- this.haveRegistered = true;
- }
-
- if (super.accessibleContext != null) {
- super.accessibleContext.firePropertyChange("AccessibleVisibleData", (Object)null, var3);
- }
-
- ((JComponent)this).revalidate();
- ((Component)this).repaint();
- }
-
- public boolean isEnabledAt(int var1) {
- return ((Page)this.pages.elementAt(var1)).isEnabled();
- }
-
- protected String paramString() {
- String var1;
- if (this.tabPlacement == 1) {
- var1 = "TOP";
- } else if (this.tabPlacement == 3) {
- var1 = "BOTTOM";
- } else if (this.tabPlacement == 2) {
- var1 = "LEFT";
- } else if (this.tabPlacement == 4) {
- var1 = "RIGHT";
- } else {
- var1 = "";
- }
-
- String var2 = this.haveRegistered ? "true" : "false";
- return super.paramString() + ",haveRegistered=" + var2 + ",tabPlacement=" + var1;
- }
-
- public void remove(Component var1) {
- int var2 = this.indexOfComponent(var1);
- if (var2 != -1) {
- this.removeTabAt(var2);
- }
-
- }
-
- public void removeAll() {
- this.setSelectedIndex(-1);
- int var1 = this.getTabCount();
-
- for(int var2 = 0; var2 < var1; ++var2) {
- Component var3 = this.getComponentAt(var2);
- if (super.accessibleContext != null) {
- super.accessibleContext.firePropertyChange("AccessibleVisibleData", var3, (Object)null);
- }
- }
-
- super.removeAll();
- this.pages.removeAllElements();
- ((JComponent)this).revalidate();
- ((Component)this).repaint();
- }
-
- public void removeChangeListener(ChangeListener var1) {
- super.listenerList.remove(class$javax$swing$event$ChangeListener != null ? class$javax$swing$event$ChangeListener : (class$javax$swing$event$ChangeListener = class$("javax.swing.event.ChangeListener")), var1);
- }
-
- public void removeTabAt(int var1) {
- int var2 = this.getTabCount();
- int var3 = this.getSelectedIndex();
- if (var3 >= var2 - 1) {
- this.setSelectedIndex(var3 - 1);
- }
-
- Component var4 = this.getComponentAt(var1);
- if (super.accessibleContext != null) {
- super.accessibleContext.firePropertyChange("AccessibleVisibleData", var4, (Object)null);
- }
-
- if (var4 != null) {
- super.remove(var4);
- var4.setVisible(true);
- }
-
- this.pages.removeElementAt(var1);
- ((JComponent)this).revalidate();
- ((Component)this).repaint();
- }
-
- public void setBackgroundAt(int var1, Color var2) {
- Color var3 = ((Page)this.pages.elementAt(var1)).background;
- ((Page)this.pages.elementAt(var1)).setBackground(var2);
- if (var2 == null || var3 == null || !var2.equals(var3)) {
- Rectangle var4 = this.getBoundsAt(var1);
- if (var4 != null) {
- ((JComponent)this).repaint(var4);
- }
- }
-
- }
-
- public void setComponentAt(int var1, Component var2) {
- Page var3 = (Page)this.pages.elementAt(var1);
- if (var2 != var3.component) {
- if (var3.component != null) {
- Object var4 = ((Component)this).getTreeLock();
- synchronized(var4){}
-
- try {
- int var6 = ((Container)this).getComponentCount();
- Component[] var7 = ((Container)this).getComponents();
-
- for(int var8 = 0; var8 < var6; ++var8) {
- if (var7[var8] == var3.component) {
- ((Container)this).remove(var8);
- }
- }
- } catch (Throwable var10) {
- throw var10;
- }
- }
-
- var3.component = var2;
- var2.setVisible(this.getSelectedIndex() == var1);
- ((Container)this).addImpl(var2, (Object)null, -1);
- ((JComponent)this).revalidate();
- }
-
- }
-
- public void setDisabledIconAt(int var1, Icon var2) {
- Icon var3 = ((Page)this.pages.elementAt(var1)).disabledIcon;
- ((Page)this.pages.elementAt(var1)).disabledIcon = var2;
- if (var2 != var3 && !this.isEnabledAt(var1)) {
- ((JComponent)this).revalidate();
- ((Component)this).repaint();
- }
-
- }
-
- public void setEnabledAt(int var1, boolean var2) {
- boolean var3 = ((Page)this.pages.elementAt(var1)).isEnabled();
- ((Page)this.pages.elementAt(var1)).setEnabled(var2);
- if (var2 != var3) {
- ((JComponent)this).repaint(this.getBoundsAt(var1));
- }
-
- }
-
- public void setForegroundAt(int var1, Color var2) {
- Color var3 = ((Page)this.pages.elementAt(var1)).foreground;
- ((Page)this.pages.elementAt(var1)).setForeground(var2);
- if (var2 == null || var3 == null || !var2.equals(var3)) {
- Rectangle var4 = this.getBoundsAt(var1);
- if (var4 != null) {
- ((JComponent)this).repaint(var4);
- }
- }
-
- }
-
- public void setIconAt(int var1, Icon var2) {
- Icon var3 = ((Page)this.pages.elementAt(var1)).icon;
- ((Page)this.pages.elementAt(var1)).icon = var2;
- AccessibleContext var4 = this.getAccessibleContext();
- if (var3 != var2 && super.accessibleContext != null) {
- super.accessibleContext.firePropertyChange("AccessibleVisibleData", var3, var2);
- }
-
- if (var2 != var3) {
- ((JComponent)this).revalidate();
- ((Component)this).repaint();
- }
-
- }
-
- public void setModel(SingleSelectionModel var1) {
- SingleSelectionModel var2 = this.getModel();
- if (var2 != null) {
- var2.removeChangeListener(this.changeListener);
- this.changeListener = null;
- }
-
- this.model = var1;
- if (var1 != null) {
- this.changeListener = this.createChangeListener();
- var1.addChangeListener(this.changeListener);
- }
-
- ((JComponent)this).firePropertyChange("model", var2, var1);
- ((Component)this).repaint();
- }
-
- public void setSelectedComponent(Component var1) {
- int var2 = this.indexOfComponent(var1);
- if (var2 != -1) {
- this.setSelectedIndex(var2);
- } else {
- throw new IllegalArgumentException("component not found in tabbed pane");
- }
- }
-
- public void setSelectedIndex(int var1) {
- int var2 = this.model.getSelectedIndex();
- this.model.setSelectedIndex(var1);
- if (var2 >= 0 && var2 != var1) {
- Page var3 = (Page)this.pages.elementAt(var2);
- if (super.accessibleContext != null) {
- super.accessibleContext.firePropertyChange("AccessibleState", AccessibleState.SELECTED, (Object)null);
- }
- }
-
- if (var1 >= 0 && var2 != var1) {
- Page var4 = (Page)this.pages.elementAt(var1);
- if (super.accessibleContext != null) {
- super.accessibleContext.firePropertyChange("AccessibleState", (Object)null, AccessibleState.SELECTED);
- }
- }
-
- }
-
- public void setTabPlacement(int var1) {
- if (var1 != 1 && var1 != 2 && var1 != 3 && var1 != 4) {
- throw new IllegalArgumentException("illegal tab placement: must be TOP, BOTTOM, LEFT, or RIGHT");
- } else {
- if (this.tabPlacement != var1) {
- int var2 = this.tabPlacement;
- this.tabPlacement = var1;
- ((JComponent)this).firePropertyChange("tabPlacement", var2, var1);
- ((JComponent)this).revalidate();
- ((Component)this).repaint();
- }
-
- }
- }
-
- public void setTitleAt(int var1, String var2) {
- String var3 = ((Page)this.pages.elementAt(var1)).title;
- ((Page)this.pages.elementAt(var1)).title = var2;
- if (var3 != var2 && super.accessibleContext != null) {
- super.accessibleContext.firePropertyChange("AccessibleVisibleData", var3, var2);
- }
-
- if (var2 == null || var3 == null || !var2.equals(var3)) {
- ((JComponent)this).revalidate();
- ((Component)this).repaint();
- }
-
- }
-
- public void setUI(TabbedPaneUI var1) {
- super.setUI(var1);
- }
-
- public void updateUI() {
- this.setUI((TabbedPaneUI)UIManager.getUI(this));
- }
-
- private void writeObject(ObjectOutputStream var1) throws IOException {
- var1.defaultWriteObject();
- if (super.ui != null && this.getUIClassID().equals("TabbedPaneUI")) {
- super.ui.installUI(this);
- }
-
- }
- }
-